/*
 * cuda-me.h
 *
 *  Created on: Jan 12, 2009
 *      Author: rothberg
 */

#ifndef CUDAME_H_
#define CUDAME_H_

typedef unsigned char uint8_t;

#ifdef __CUDACC__ //not sure if this is even needed
extern "C"{
#include "hier.h"
#endif

typedef struct cuda_param
{
    struct {
        uint8_t *plane;
        int i_stride;
        int i_lines;
        int i_width;
    }fenc, fref[2];

}cuda_param_t;

void init_cuda(int i_width, int i_lines);
void deinit_cuda();

void cuda_me(cuda_param_t *h, int* mvp[2], int* mv[2], int* mb_sad);

#ifdef __CUDACC__
}
#endif



#endif /* CUDAME_H_ */
